There are many kinds of networks that can be used to couple computers together for data communication. For example, a simple local area network (LAN), such as a Novell.RTM. network or an Appleshare.RTM. network, can be used to couple together the personal computers in an office. Often, one or more network "servers" or "hosts" will influence data flow within the network and access to certain network functions such as a central file repository, printer functions, Internet gateways, etc. Other local area networks operate on a peer-to-peer basis without the use of servers.
A wide area network (WAN) is sometimes referred to as a "network of networks." The Internet is a WAN that has, of late, become extremely popular. The origins of the Internet date back several decades to a government-sponsored military/business/research WAN that was designed to remain operational even in the event of a catastrophic loss of a large portion of the network. To accomplish this goal, robust protocols and systems were developed which allowed a geographically distributed collection of computer systems to be connected by means of a network that would remain operational even if large portions of the network were destroyed.
While the use of the Internet has been prevalent for many years now, its use has been limited by the arcane and often difficult commands required to access the various resources of the network. To address this problem, a protocol known as the "World Wide Web" or "WWW" was developed to provide an easier and more user-friendly interface to the Internet. With the World Wide Web, an entity having a domain name creates a "web page" or simply "page" which can provide information and, to an ever greater extent, some interactivity with the web page.
The Internet is based upon a transmission protocol known as "Transmission Control Protocol/Internet Protocol" (or "TCP/IP" for short), which sends packets of data between a host machine, e.g. a server computer on the Internet, and a client machine, e.g. a user's personal computer connected to the Internet. The WWW is an Internet interface protocol which is supported by the same TCP/IP transmission protocol. Intranets are private networks based on Internet standards, and have become quite common for managing information and communication within an organization. Intranets, since they subscribe to Internet standards, can use the same web browser and web server software as used on the Internet. Intranets are, in many cases, supplementing or replacing traditional local area network protocols.
Most, if not all, of the data communication links between the various machines of most networks are hard-wired. That is, client machines are typically coupled to a server and to other client machines by wires (such as twisted-pair wires), coaxial cables, fiber optic cables, and the like. In some instances, some of the communication links can be wireless communication links, such as microwave links, radio frequency (r.f.) links, infrared links, etc., but this tends to be rare with most LANs.
The majority of so-called wireless networks use radio modems for data communication, although there are some IR networks available that work over very short distances, such as within a single large room. However, networks spanning larger areas will predominately use radio modems. GRE America, Inc. of Belmont, Calif. sells a number of spread-spectrum modems that can be used for the transmission of digitally encoded information. A number of wireless network services, such as Ricochet.RTM. network services (Ricochet is a subsidiary of Metcocom, Inc. of Los Gatos, Calif.) combine a radio modem with a portable personal computer to allow the personal computer to connect to the Internet. The Ricochet system operates by providing a large number of r.f. data transceivers within a given geographic area, that are often attached to telephone poles, and that are coupled to centralized server that serves as a gateway to the Internet.
The assumption made by the Ricochet system designers is that a given radio modem coupled to portable computer will be in radio contact with one, and only one, transceiver of the network. A data "packet" sent by the portable computer via the radio modem will be received by the transceiver and broadcast through the Ricochet network until it reaches a Wide Area Processor or WAP, where it is transmitted by twisted pair over the Internet to a Ricochet server connected to the Internet. Packets destined for a particular personal computer are received by the server of the Ricochet system, and are transmitted from each of the transceivers with the expectation that the radio modem of the destination portable computer will receive the data packets from one of those transceivers.
It should be noted that wireless communication systems such as the Ricochet system exhibit a number of drawbacks. For one, if the radio modem of the personal computer is not within transmission range of one of the transceivers of the Ricochet network, a connection cannot be made to the network. Furthermore, the Ricochet network can create a great deal of "packet duplication" or "pollution" as copies of a particular data packet are multiply repeated, rather than routed. This packet duplication can also occur if a radio modem of a particular personal computer in radio transmission range of two or more transceivers of the Ricochet network. In such an instance, the two or more transceivers can each receive the data packets, and each proliferates copies of the data packet across the Ricochet network. While duplicate packets are ultimately discarded, such duplicate packets increase data congestion in the network and increases the work that must be performed by the server. In addition, since data packets are transmitted from all the transceivers of the Ricochet network, there may be packet duplication at the personal computer if it is in contact with more than one transceiver of the Ricochet network, and the bandwidth available from each transceiver is reduced since each transceiver is transceiving each client-destined data packet on the network. Also, since the data is transmitted to the Internet over twisted pair, there is a 28.8K baud bottleneck in the system, resulting is average system performance of even less than 28.8K baud. It is therefore apparent that prior art wireless networks of the Ricochet network type lack robustness (i.e. the ability to maintain communication with the network under adverse conditions) and exhibit a number of inefficiencies such as data packet proliferation.
Cellular telephone systems operate using a number of transceivers, where each transceiver occupies a "cell." As a mobile telephone moves from one cell to another, an elaborate and expensive land-based system causes the mobile telephone to be "handed-off" from the cell that it was previously in to the cell that it is entering. As noted, the equipment and system used for the hand-off is expensive and, further, such hand-off sometimes fail, dropping the telephone connection. Furthermore, individual radios at a given cell can handle only one call at a time, which is inadequate for many computer network systems.
Amateur radio ("Ham") operators have developed a peer-to-peer digital repeater system referred to as the AX.25 protocol. With this protocol, each peer repeats all data packets that it receives, resulting in rapid packet proliferation. In fact, with this protocol, so many packet collisions occur among the peers that the packets may never reach the intended peer.
Lastly, there is abundant reporting in the literature, but it cannot be substantiated, that the U.S. Military has a wireless communication system which allows digital information to be transmitted in a more robust and efficient matter. More specifically, it is suspected that the U.S. Military has a system in which digital data can follow multiple paths to a server that may include one or more clients of the network. However, source code listings, or source code in machine-readable form for these U.S. military systems remains secret and unavailable to the public. Some of the literature pertaining to this U.S. military technology is summarized below.
"Packet Radios Provide Link for Distributed Survivable Command Control Communications in Post-Attack Scenarios", M. Frankel, Microwave Systems News 13:6 (June 1983), pp. 80-108, discusses the SURAN (Survivable Radio Network) project and its relation to overall command and control communications (C.sup.3) development.
"Control Using Pacing in a Packet Radio Network", N. Goweer and J. Jubin, Proceedings of Milcom 82, (New York. IEEE Press, 1982), pp. 23.1-23.6, describes a technique for pacing flow control used in the DARPA packet radio project.
"Current Packet Radio Network Protocols", J. Jubin, Proceedings of Infocom 85 (New York: IEEE Press, 1985), pp. 86-92, is a systematic review of the various protocols currently used in the DARPA packet radio network. The article includes a discussion of pacing, route calculation, maintenance of route and connectivity tables, acknowledgment schemes, and other mechanisms. The article also provides a discussion on how the various protocols interrelate and reinforce each other.
"The Organization of Computer Resources into a Packet Radio Network", R. Kahn, IEEE Transactions on Communications COM-25:1 (January 1977), pp. 169-178, is a prospectus for the second generation of the DARPA radio project. This lead to the development of the DARPA Bay Area Packet Radio experimental work in the mid to late 1970's.
"Advances in Packet Radio Technology", R. Kahn, S. Gronemeyer, J. Burchfiel, R. Kunzelman, Proceedings of the IEEE 66z:11 (November 1978), pp. 1468-1496 is a survey of packet radio technology in the second generation of the DARPA packet radio project.
"Survivable Protocols for Large Scale Packet Radio Networks", G. Lauer, J. Westcott, J. Jubin, J. Tornow, IEEE Global Telecommunications Conference, 1984, held in Atlanta, Ga., November 1984 (New York: IEEE Press, 1984) p. 468-471, describes the SURAN network, with an emphasis on network organizations and management protocols.
"Multiple Control Stations in Packet Radio Networks", W. MacGregor, J. Westcott, M. Beeler, Proceedings of Milcom 82 (New York: IEEE Press, 1982) pp. 10.3-10.3-5, is a transitional paper that describes design considerations involved in converting the DARPA packet radio network from single to multistation operation while eliminating the additional step to a fully hierarchical design. It focuses on the self-organizing techniques that are necessary in the multistation environment.
"Future Directions in Packet Radio Technology", N. Shacham, J. Turnow, Proceedings of IEEE Infocom 85 (New York: IEEE Press, 1985), pp. 93-98, discusses new research areas in packet radio, with some references to SURAN developments.
"Issues in Distributed Routing for Mobile Packet Radio Networks", J. Westcott, IEEE Global Telecommunications Conference, 1982 (New York: IEEE Press, 1982), pp 233-238, studies the issues involved in the DARPA packet radio network, prior to the availability of signal strength sensing from the radio receivers as a hardware capability on which to build. The paper describes issues that must be considered in evaluating the usability of an RF link and gives details of the alternate route mechanism used in the DARPA system to smooth temporary RF propagation problems that appear in a mobile node environment.
"A Distributed Routing Design for a Broadcast Environment", J. Westcott, J. Jubin, Proceedings of Milcom 82 (New York: IEEE Press, 1982), pp. 10.4-1-10.4-5, is a detailed study of the problems involved in connectivity and routing table management in stationless packet radio, including a discussion of algorithms proposed for the DARPA packet radio network.
There is, therefore, a great deal of literature describing packet radio systems. The prior art does not disclose, however, a packet-based wireless computer network that is both robust and efficient, wherein each client of the network can be efficiently and effectively in communication with a multiplicity of other clients and servers of the network, greatly multiplying the number of link choices available and, if conditions change, or if a better link to a server becomes known to a client, where the link for a client can be updated and improved.